package cn.tedu.boot03.mapper;

import cn.tedu.boot03.entity.Product;
import org.apache.ibatis.annotations.*;

import java.util.List;


/**
 * @author 作者：HeShaoShuai
 * @Email 邮箱：2569819541@qq.com
 * @Date 日期：2023/5/11 14:42
 * @Package 包名：cn.tedu.boot03.mapper
 * @Project 项目名：JavaSE
 * @Version 1.0
 */
@Mapper
public interface ProductMapper {

	//#{xxx} 这种写法会自动从下面方法的参数列表中找到同名的参数,
	//如果没有同名参数则调用第一个参数的getXXX()方法
	@Insert("INSERT INTO product VALUES(NULL,#{title},#{price},#{num})")
	void insert(Product product);

	//查询数据时返回值为List集合 查询到的数据会自动封装到对象里面并把对象装进集合
	@Select("SELECT * FROM product")
	List<Product> select();

	@Select("SELECT * FROM product WHERE id=#{id}")
	Product selectById(int id);

	@Update("UPDATE product SET title=#{title},price=#{price},num=#{num} WHERE id=#{id}")
	void update(Product product);

	@Delete("DELETE FROM product WHERE id=#{id}")
	void deleteById(int id);


}